#coding=utf-8

from readExcel import *

#导入单元测试模块，导入生成测试报告模块
import unittest,HTMLTestRunner

#创建一个测试用例的类,创建的类需要继承来自单元测试模块里面测试用例的父类
class testCase(unittest.TestCase):
    #setUp表示测试开始了
    def setUp(self):
        unittest.TestCase.setUp(self)
        
    def test_login(self):
        ele = readExcel_("login")
        #结果一直传递到了单元测试页面，有可能有元素的位置，有可能是个None值
        #单元测试中的断言设置
        self.assertIsNotNone(ele)    
    
    def test_add_goods(self):
        ele = readExcel_("addGoods")
        self.assertIsNotNone(ele)
        
    #tearDown表示测试运行完了
    def tearDown(self):
        unittest.TestCase.tearDown(self)

#写一个主函数的入口
if __name__ == "__main__":
    #如果是需要运行多个测试用例的脚本，那么就需要用一个袋子将所有的用例先装起来
    suite = unittest.TestSuite()   #测试套件
    suite.addTest(testCase("test_login"))     #类名("函数名")
    suite.addTest(testCase("test_add_goods"))
    #定义一个测试报告的文件位置和名字,用二进制的方式来写入文件
    f = open("E:/report.html","wb")
    #使用测试报告的模块，需要写入三个内容：文件、页面的描述、页面的标题
    runner = HTMLTestRunner.HTMLTestRunner(stream=f,description=u"哈哈哈我是描述",title=u"嘿嘿我是标题")
    #运行我们的测试套件
    runner.run(suite)
    #关闭文档
    f.close()
    
    #在运行完成之后，调用邮件发送的模块，来自动的发送测试报告
    from sendEmail import *
    sendEmail_()



        
        
        

    